<template>
  <div class="home page-component">
    <el-carousel indicator-position="outside">
      <el-carousel-item v-for="item in 2" :key="item">
        <img src="~assets/images/web-banner1.png" alt="">
      </el-carousel-item>
    </el-carousel>
    <!--  搜索  -->
    <div class="search-container">
      <div class="search-wrapper">
        <div class="hospital-search">
          <el-autocomplete
            class="search-input"
            prefix-icon="el-icon-search"
            v-model="state"
            :fetch-suggestions="querySearchAsync"
            placeholder="点击输入医院名称"
            @select="handleSelect"
          >
            <span slot="suffix" class="search-btn v-link highlight clickable selected">搜索 </span>
          </el-autocomplete>
        </div>
      </div>
    </div>
    <!-- bottom -->
    <div class="bottom">
      <div class="left">
        <div class="home-filter-wrapper">
          <div class="title"> 医院</div>
          <div>
            <div class="filter-wrapper">
              <span class="label">等级：</span>
              <div class="condition-wrapper">
          <span class="item v-link clickable"
                :class="hostypeActiveIndex == index ? 'selected' : ''"
                v-for="(item,index) in hostypeList" :key="item.id"
                @click="hostypeSelect(item.value, index)">{{ item.name }}
          </span>
              </div>
            </div>
            <div class="filter-wrapper">
              <span class="label">地区：</span>
              <div class="condition-wrapper">
        <span class="item v-link clickable"
              :class="provinceActiveIndex == index ? 'selected' : ''"
              v-for="(item,index) in districtList" :key="item.id"
              @click="districtSelect(item.value, index)">{{ item.name }}
        </span>
              </div>
            </div>
          </div>
        </div>
        <div class="v-scroll-list hospital-list">
          <div class="v-card clickable list-item" v-for="item in list" :key="item.id">
            <div class="">
              <div class="hospital-list-item hos-item" index="0" @click="show(item.hoscode)">
                <div class="wrapper">
                  <div class="hospital-title"> {{ item.hosname }}</div>
                  <div class="bottom-container">
                      <span>
                        <p>北京协和医院是一所位于北京市东城区，集医疗、科研、教学为一体的大型综合医院.</p>
                      </span>
                    <div class="icon-wrapper">
                      <span class="iconfont"></span>{{ item.param.hosTypeString }}
                    </div>
                    <div class="icon-wrapper">
                      <span class="iconfont"></span>每天{{ item.bookingRule.releaseTime }}放号
                    </div>
                  </div>
                </div>
                <img src="~assets/images/8.jpg" alt="" class="hospital-img"/>
              </div>
            </div>
          </div>
        </div>
      </div>
      <div class="right">
        <div class="common-dept">
          <div class="header-wrapper">
            <div class="title"> 常见科室</div>
            <div class="all-wrapper"><span>全部</span>
              <span class="iconfont icon"></span>
            </div>
          </div>
          <div class="content-wrapper">
            <span class="item v-link clickable dark">神经内科 </span>
            <span class="item v-link clickable dark">消化内科 </span>
            <span class="item v-link clickable dark">呼吸内科 </span>
            <span class="item v-link clickable dark">内科 </span>
            <span class="item v-link clickable dark">神经外科 </span>
            <span class="item v-link clickable dark">妇科 </span>
            <span class="item v-link clickable dark"> 产科 </span>
            <span class="item v-link clickable dark">儿科 </span>
          </div>
        </div>
        <div class="space">
          <div class="header-wrapper">
            <div class="title-wrapper">
              <div class="icon-wrapper"><span
                class="iconfont title-icon"></span>
              </div>
              <span class="title">平台公告</span>
            </div>
            <div class="all-wrapper">
              <span>全部</span>
              <span class="iconfont icon"></span>
            </div>
          </div>
          <div class="content-wrapper">
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark">关于延长北京大学国际医院放假的通知 </span>
            </div>
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark">北京中医药大学东方医院部分科室医生门诊医 </span>
            </div>
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark"> 武警总医院号源暂停更新通知 </span>
            </div>
          </div>
        </div>
        <div class="suspend-notice-list space">
          <div class="header-wrapper">
            <div class="title-wrapper">
              <div class="icon-wrapper">
                <span class="iconfont title-icon"></span>
              </div>
              <span class="title">停诊公告</span>
            </div>
            <div class="all-wrapper">
              <span>全部</span>
              <span class="iconfont icon"></span>
            </div>
          </div>
          <div class="content-wrapper">
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark"> 中国人民解放军总医院第六医学中心(原海军总医院)呼吸内科门诊停诊公告 </span>
            </div>
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark"> 首都医科大学附属北京潞河医院老年医学科门诊停诊公告 </span>
            </div>
            <div class="notice-wrapper">
              <div class="point"></div>
              <span class="notice v-link clickable dark">中日友好医院中西医结合心内科门诊停诊公告 </span>
            </div>
          </div>
        </div>
      </div>
    </div>
  </div>
</template>

<script>
    import cookie from 'js-cookie'
    import hospitalApi from "@/api/hosp/hospital"
    import dictApi from "@/api/cmn/dict"
    import msmApi from "@/api/msm/msm";
    import userInfoApi from "@/api/user/UserInfo";

    export default {
        // 服务器端渲染异步,显示医院列表
        asyncData({params, error}) {
            return hospitalApi.getHospPageList(1, 10, null)
                .then(response => {
                    // console.log('服务器端渲染异步,显示医院列表', response.data)
                    return {
                        list: response.data.content,
                        pages: response.data.totalPages
                    }
                })
        },
        data() {
            return {
                searchObj: {},
                limit: 1,
                page: 10,
                hosname: '',
                hostypeList: [],
                districtList: [],
                state: null,
                hostypeActiveIndex: 0,
                provinceActiveIndex: 0,
                queryString: '',

            }
        },
        created() {
            this.init()
            this.querySearchAsync()
        },
        methods: {
            init() {
                // 查询医院等级列表
                dictApi.findByDictCode('Hostype').then(response => {
                    // console.log('查询医院等级列表findByDictCode==', response)
                    this.hostypeList = []
                    this.hostypeList.push({"name": "全部", "value": ""})
                    for (let i = 0; i < response.data.length; i++) {
                        this.hostypeList.push(response.data[i])
                    }
                })
                // 查询地区数据
                dictApi.findByDictCode('Beijing').then(response => {
                    // console.log('查询地区数据findByDictCode==', response)
                    this.districtList = []
                    this.districtList.push({"name": "全部", "value": ""})
                    for (let i in response.data) {
                        this.districtList.push(response.data[i])
                    }
                })
            },
            // 查询医院列表
            getHospList() {
                hospitalApi.getHospPageList(this.page, this.limit, this.searchObj).then(response => {
                    //  console.log('查询医院列表getHospList=}', response)
                    for (let item in response.data.content) {
                        this.list.push(response.data.content[item])
                    }
                    this.page = response.data.totalPages
                })
            },
            // 根据医院等级查询
            hostypeSelect(hostype, index) {
                this.list = []
                this.page = 1
                this.hostypeActiveIndex = index
                this.searchObj.hostype = hostype
                // 调用医院查询方法
                this.getHospList()
            },
            // 根据地区查询医院
            districtSelect(districtCode, index) {
                this.list = []
                this.page = 1
                this.provinceActiveIndex = index
                this.searchObj.districtCode = districtCode
                this.getHospList()
            },
            // 在输入框输入值，弹出下拉框，显示相关内容
            querySearchAsync() {
                this.searchObj = []
                if (this.queryString === '') return
                hospitalApi.getHospByHosName(this.queryString).then(response => {
                    // console.log('在输入框输入值显示医院内容getHospByHosName=>', response)
                    for (let i = 0; i < response.data.length; i++) {
                        response.data[i].value = response.data[i].hosname
                    }
                    cb(response.data)
                })

            },
            // 在下拉框选择某一个内容，执行下面方法，跳转到详情页面中
            handleSelect(item) {
                window.location.href = '/hospital/' + item.hoscode
            },
            //点击某个医院名称，跳转到详情页面中
            show(hoscode) {
                window.location.href = '/hospital/' + hoscode
            },


        }
    }
</script>
